The present invention relates generally to retrieving data stored in computer files and database structures, and more particularly to searching for such data which meets particular criteria.
As our society increasingly comes to rely on complicated electronic systems, and particularly on such systems which have the ability to inter communicate, finding specific objects within these systems is becoming an increasingly daunting task. Today we widely use computer systems, including personal computers, network computers, and still large computer systems such as terminal accessed mainframes. We also are increasingly using enhanced electronic devices which are often portable. Some examples include audio players, personal digital assistants, and telephones able to access some Internet content. The distinction between computers and other devices is becoming a largely irrelevant one. But all of this is exacerbating one already existing problem, how to find what we want in the complex and expanding networks which are now accessible to us.
Existing computer systems serve well to illustrate both the problem and the existing approaches to dealing with it. The personal computer (PC) has been available for roughly twenty years now. Very early PCs had only limited storage capability, typically on removable floppy disk or cassette tape media. However, since file sizes were small then, and many files might be stored on a single media unit, file name type search utilities were soon developed. These, however, did not always suffice, and rudimentary file content type search utilities also were soon.
A major advance for PCs was the fixed disk drive, or as it more commonly became known: the hard drive. Initial PC hard drives could store ten megabytes, which exacerbated the problem of searching for files and their contents. That advent of much larger hard drives, able to store even gigabytes, exacerbated the existing problems but did not substantially change their nature.
The major relevant advance for PCs was the computer network, and this did substantially change the nature of the problem. On larger networks, we might now also have to search for computers, just to if they existed or were currently on-line. We might also try to search out computer users, particularly in networks were multiple users might employ a single computer, say, via multiple terminals. Network messaging systems soon followed, and to databases of contact information were created to assist in finding and communicating with people.
From small, local networks we progressed to wide area networks, and today we have global networks such as the Internet. And from simple file name and content searches we now have a huge variety of objects that we regularly must search for. For instance, we may search the contents, names, and subjects of files; we may search for storage devices, computers, or even sub-networks of computers; we may also search databases spread across all of these; and this is just a very limited statement of what one might search for.
Continuing with the example of PCs, the most widely used operating system in such today is WINDOWS (trademark of Microsoft Corporation of Redmond, Wash.). WINDOWS provides a graphical user interface (GUI) to its users. FIG. 1 (background art) presents and example a of the WINDOWS GUI showing a conventional window 1 having information bars 2 (e.g., for title and status), control bars 3 (e.g., for menus and buttons), and a main area 4. The main area 4 includes icons 5 representing static pointers to conventional objects 6. A folder object 6a and various file objects 6b are present.
WINDOWS includes a number of search features, and one current version provides menu choices to find: xe2x80x9cFiles or Folders . . . ,xe2x80x9d xe2x80x9cComputers . . . ,xe2x80x9d People . . . ,xe2x80x9d objects xe2x80x9cOn the Internet . . . ,xe2x80x9d and this menu is extensible to include find choices specific to applications as well.
This is not sufficient, however, and utility programs abound that provide xe2x80x9cenhancedxe2x80x9d search capability for use within the PC and outside of it on networks. In fact, in the large publicly accessible network called the Internet a whole service industry has grown around finding objects. Some Internet sites provide search capability to only search their own databases, for example, to facilitate PC users shopping. Other Internet sites provide search capability that extends to objects, i.e., data, which is essentially anywhere on the Internet.
The prior art in both locally originated search systems and remote search systems have limitations. For a locally originating system the example of WINDOWS will again be used. But this is not to denigrate it; many of the same points apply for MAC OS and search utilities in it such as SHERLOCK (trademarks of Apple Computer Inc. of Cupertino, Calif.).
In WINDOWS a search must be pre-created, using a complex criteria based approach. This requires a sophisticated computer user, and many WINDOWS users never employ its search capabilities. Once a search is created, it can be stored. But reopening it merely opens the utility with the old search criteria displayed. If a user wants to conduct the same search as before, this requires a command to proceed.
In WINDOWS searching is actually limited to files and folders in its own network location protocol or in universal naming convention (UNC) protocol. It cannot also directly search http, ftp, etc. protocols. For example, to the extent that it indirectly supports http, it opens a browser application set to its default search engine (e.g., LYCOS by Lycos Inc. of Williamstown, Mass.), and the user is then left to specify appropriate criteria there.
And as such search engines currently exist, these criteria are generally not storable for reuse. While some such search engines send the search criteria in a universal resource locator (URL) getting a copy of that URL and storing it is not easily done, and once such is stored, reviewing and editing such requires very high level familiarity with HTML, XML, etc. protocols. For example, online stores such as Amazon.com allowing saving of personal profiles for preferred categories or automatic filtering according to past purchases, but this is limited to a single profile per user login and fail to provide selectable differentiation on a plurality of distinct foci.
WINDOWS includes a separate find computer function, but that does not automatically further extend to finding files and folders on a found computer. And its find people function merely extends to searching its contact lists and address books in applications with which it is closely associated.
Another concern is how to accommodate the need for searching in emerging user interfaces, which will herein be termed XUI (for extended or alternate). Visual GUI are useful in many contexts, but not in all. Interface designers today are increasingly turning to audio and tactile interfaces as well. This is particularly the case with enhanced devices, where the term xe2x80x9caudible iconxe2x80x9d is now used. For example, MP3 format music players and wireless web-enabled devices are increasingly common, and it is only a matter of time before combination devices are marketed which permit users to download MP3 music selections for their enjoyment. But such devices should not have to rely on only visual GUIs. Indeed, it is already appreciated, at least among some segments of the interface design community, that such are stereotypical and limiting, and-that audible XUIs are appropriate for audible subject matter.
Accordingly, what is needed now is an improved search system. Such an improved search system should preferably work in conventional computer GUIs, such as WINDOWS and MAC OS, as well as in GUIs and XUIs used by web sites, web applications and enhanced electronic devices. Such an improved search system should also integrate the separate capabilities of existing search systems as well as new capabilities, yet remain simple enough that relatively unsophisticated users may still employ it.
Accordingly, it is an object of the present invention to provide a system for seamless integrated searching for objects within storage systems, including those of computers, enhanced electronic devices, and networked collections of such.
Another object of the invention is to provide a system for searching that integrates well with existing and emerging graphical and extended user interfaces (GUIs and XUIs), and thereby enhance the capabilities and utility of such.
Another object of the invention is to provide a system for searching permitting complex searches to be easily created, tested, and edited.
And, another object of the invention is to provide a system for searching which is powerful in an extensible manner, permitting sub-searches to be combined to create more powerful overall searches.
Briefly, one preferred embodiment of the present invention is a system for searching for and presenting collections of conventional objects. The search system includes a computerized system having a controllable display and a selection unit influencing what is depictable with that display. The computerized system may be a single computerized device or a networked collection of various computerized devices, and the display need not necessarily be a visual type of display. Also included in the search system is a meta-folder containing at least one search object which is suitable for locating current instances of the conventional objects currently present in the computerized system. A closed representation of said meta-folder is depictable on the display, and once that closed representation is selected and opened with the selection unit it can become an open representation of the meta-folder which includes representations of the current instances of the conventional objects.
An advantage of the present invention is that it may be employed with a very broad spectrum of possible devices and to access a very broad spectrum of possible storage systems.
Another advantage of the invention is that it may integrate into existing and emerging GUIs and XUIs in a manners which may make it appear a natural extension of the underlying user interface, and which therefore make use the invention highly intuitive to users of such GUIs and XUIs.
And, another advantage of the invention is that it may be employed in a substantially visual manner, largely using click-to-open and drag-and-drop types of operations, thus making it efficient yet simple to use.